package com.ag.oa.core.dao;


import com.ag.oa.core.entity.dto.WebQRCodeLoginDTO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

/**
 * Author:   wjc
 * Date:     2021/12/17
 * Description: WEB扫码登录，Dao接口层
 */
@Repository
public interface IWebQRCodeLoginDao {

    /**
     * 根据登录码 或 扫码时间戳校验，返回数据量
     *
     * 检查内容包括：
     * 1、code是否与系统的值相同？避免伪造
     * 2、二维码是否被使用过？避免盗用
     * 3、二维码是否过期失效？避免长时间不操作
     */
    Integer getCountByCodeOrTime(@Param("loginCode") String loginCode, @Param("scancodeTime") Long scancodeTime);

    /**
     * 成功授权，绑定小程序用户，修改结果状态
     *
     * 增加服务器时间校验，避免用户长时间不操作情况
     */
    Integer updateSuccessAuthorization(WebQRCodeLoginDTO webQRCodeLoginDTO);

}
